﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Store.IDAL
{
    public interface IBaseService<T> : IDisposable where T : Store.Models.BaseEnity
    {
        Task CreateAsync(T model, bool saved = true);
        Task EditAsync(T model, bool saved = true);
        Task RemoveAsync(T model, bool saved = true);
        Task RemoveAsync(Guid id, bool saved = true);
        Task Save();
        Task<T> GetOneById(Guid id);
        IQueryable<T> GetAllAsync();
    }
}
